Method and Apparatus for Advertisement Placement in a User Dialog on a Set-Top Box

ABSTRACT

Methods and apparatuses for presenting targeted advertisements to DVR users are described. After a DVR has finished playing a recorded television program, or in response to other specified events, the DVR presents a screen which comprises a “save or delete” menu. In addition to the “save” and “delete” options, the menu additionally comprises one or more other options. Each of these other options may correspond to a separate promotional item. For example, a user&#39;s selection of such an option may cause the DVR to display or play an advertisement on the user&#39;s television set. Additionally or alternatively, these other options, when selected by a user, may cause the DVR to display a user interface through which the user can actually purchase a product or service. The product or service advertised or offered may be one that was featured or referenced in the television program that the user was just watching.

CROSS REFERENCE TO RELATED APPLICATIONS AND CLAIM OF PRIORITY

The present application claims priority as a continuation of U.S. patentapplication Ser. No. 13/602,027 filed Aug. 31, 2012 which claimspriority as a continuation of U.S. patent application Ser. No.11/474,039, filed on Jun. 23, 2006, the entire contents of the abovereferenced applications is hereby incorporated by reference, under 35U.S.C. §120, for all purposes as though fully stated herein. Theapplicants hereby rescind any disclaimer of claim scope in the parentapplications or the prosecution history thereof and advise the USPTOthat the claims in this application may be broader than any claim in theparent applications.

FIELD OF THE INVENTION

The present invention relates to displaying targeted advertisementsthrough digital video recorders (DVRs).

BACKGROUND

The approaches described in this section could be pursued, but are notnecessarily approaches that have been previously conceived or pursued.Therefore, unless otherwise indicated herein, the approaches describedin this section are not prior art to the claims in this application andare not admitted to be prior art by inclusion in this section.

The introduction of the DVR to the consumer world has revolutionized theway viewers watch and record television programs. DVRs eliminate thecomplications of VCRs and the need for video tapes. DVRs recordtelevision programs on a hard drive that is capable of storing a largenumber of television programs. Because DVRs are usually box-like inshape, and are often found sitting on top of the television sets towhich they are connected, DVRs typically are included in the broadcategory of devices now called “set-top boxes.” Much like VCRs, DVRsreceive one or more television signals as input from cables or satellitedishes, (or, in some cases, unlike VCRs, from broadband networkconnections) and also output television signals to a television set orother display.

At least one such DVR automatically records several television programsin advance of the time that a user will watch those television programs.After one or more television programs have been recorded and stored on ahard drive, the DVR presents, to the user, through the television set, auser interface that identifies the television programs which currentlyare available for viewing. This user interface comprises a menu thatallows the user to select, using a remote control device for the DVR,one of the currently recorded television programs. In DVRs produced byTiVo Inc., this menu is often called the “now playing” menu.

After a user selects a recorded television program, the DVR plays theselected television program to the user by reading the appropriatedigital recording from the hard drive and sending a corresponding signalto the television set. While the television program is being played tothe user, the DVR also receives signals from the user's remote control.Through the remote control, a user can instruct the DVR to performvarious operations relative to the television program. For example, theuser can instruct the DVR to play the television program backward for adesired period of time (“rewind”). The user can play the televisionprogram forward with greater than usual speed (“fast forward”). The usercan play the television program forward with slower than usual speed.The user can cause the currently displayed video frame of the televisionprogram to be displayed indefinitely (“pause”), or stop the playing ofthe television program entirely. In this manner, the user can temporallytraverse the television program however the user likes.

Although modern DVRs typically are equipped with hard drives that canstore very large quantities of data, these hard drives are still limitedin the quantity of data that they can store. In order to free space onthe hard drive so that additional television programs can be recorded,some DVRs present a “save or delete” menu (or “dialog”) to the userafter a recorded television program has been played in its entirety. Themenu gives the user the options of deleting the recorded televisionprogram from the DVR's hard drive or retaining the recorded televisionon the DVR's hard drive for later viewing. The user can select one ofthese options using the remote control. In response to the user'sselection, the DVR saves or deletes the television program in accordancewith the user's selection. In response to a user's selection of the“delete” option, the program may be “deleted” as perceived by the user;the program might not actually be deleted from persistent storage suchas a hard drive at that point.

This system for freeing space on the hard drive works well. However, itmay be observed that the “save or delete” menu, being limited in thenumber of options that need to be presented to the user, does not occupymuch of the frame in which it is displayed. One might even consider theunused space in such a frame—in which no meaningful content ispresented—and consider that space to be something of a wastedopportunity. One might especially consider that space to be a wastedopportunity when one realizes that, at the time the “save or delete”menu is presented, the user has just finished viewing a televisionprogram in which various products of various companies might have beenshown. The memories of these products may still be fresh in the user'smind when the television program finishes, but these memories tend tofade fast.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is illustrated by way of example, and not by wayof limitation, in the figures of the accompanying drawings and in whichlike reference numerals refer to similar elements and in which:

FIG. 1 is a block diagram that illustrates a system in which enhancedpromotional information is presented to a user in response to theoccurrence of certain events, such as the completion of the playing of arecorded television program, according to one embodiment of theinvention;

FIG. 2 is a block diagram that illustrates an overview of the internalstructure and components of a DVR, according to one embodiment of theinvention;

FIG. 3 is a flow diagram that illustrates the steps of a techniquethrough which a DVR presents promotional information to a DVR user inresponse to the occurrence of certain events, such as the completion ofthe playing of a recorded television program, according to oneembodiment of the invention;

FIG. 4 is a block diagram of a system on which embodiments of theinvention may be implemented;

FIG. 5 illustrates an example of an enhanced save or delete menuaccording to an embodiment of the invention; and

FIG. 6 illustrates an example of a menu that might be displayed after auser's selection of an option other than a “save” or “delete” option,according to an embodiment of the invention.

DETAILED DESCRIPTION

In the following description, for the purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of the present invention. It will be apparent, however,that the present invention may be practiced without these specificdetails. In other instances, well-known structures and devices are shownin block diagram form in order to avoid unnecessarily obscuring thepresent invention.

In the following discussion, in references to the drawings like numeralsrefer to like parts throughout the several views.

Embodiments are described herein according to the following outline:

-   -   1.0 General Overview    -   2.0 System Structural Overview    -   3.0 Example Techniques        -   3.1 Save/Delete Menu Screen Alternatives        -   3.2 Deriving Revenue from DVR-Placed Advertising        -   3.3 Automated Bidding for Menu Option Slots        -   3.4 Tagging Television Programs with Advertisement IDs        -   3.5 Adjusting Menu Options Based on Hit Rates        -   3.6 Offers to Record Similar Television Programs        -   3.7 Pay-Per-View Implementations        -   3.8 Dynamic Advertisement Selection    -   4.0 Implementation Mechanisms—Hardware Overview

1.0 General Overview

According to one embodiment of the invention, after a DVR has finishedplaying a recorded or downloaded television program, or in response toother specified events, the DVR presents, to a user who was watching therecorded or downloaded television program, a screen which comprises a“save or delete” menu. The menu comprises a “save” option that, ifselected, causes the DVR to maintain the recorded or downloadedtelevision program on the DVR's hard drive. A title and/or otherdescription of the program may be retained in the DVR's user interfacein response to the selection of the “save” option, thereby making theprogram available to the user for later viewing. The menu also comprisesa “delete” option that, if selected, causes the DVR to “free” the spaceon the DVR's hard drive that was being used to store the recorded ordownloaded television program. In “freeing” this space, the space may bedesignated as being available to record other television programs; thepreviously recorded television program might not actually be removedfrom the hard drive until it is overwritten by another recordedtelevision program. In response to a user's selection of the “delete”option, the program may be “deleted” as perceived by the user; theprogram might not actually be deleted from persistent storage such as ahard drive at that point.

According to one embodiment of the invention, in addition to the “save”and “delete” options, the menu additionally comprises one or more otheroptions. In one embodiment of the invention, each of these other optionscorresponds to a separate promotional item. For example, a user'sselection of such an option may cause the DVR to display or play anadvertisement on the user's television set.

An “advertisement” usually is information about a product, service,brand, company, political movement, public cause, etc. The advertisementmay be, but does not need to be, associated with a selling entity thatis, itself, a person or a company. Advertisements sometimes are designedspecifically to publicize a selling entity's product or service with theultimate goal of generating business and/or revenue for the sellingentity. Such advertisements may be referred to specifically as “businessadvertisements.” However, other advertisements may be associated with,provided by, or feature a person or organization that has a non-businessor non-revenue motive. For example, advertisements may be politicaladvertisements. Advertisements may promote or feature, as theirsubjects, public causes, public service announcements, and/oreducational information. Advertisements may be informative in nature.

Besides the “save” and “delete” options, the menu might contain anoption that says “tell me more about . . . ” followed by the name of aproduct, service, company, brand, person, public cause, etc.Additionally or alternatively, the menu might contain an option whichoffers to send a brochure or other information to the viewer's homeaddress (on file with the DVR service company) and/or the viewer'se-mail address. When a viewer selects such an option, the DVR may storean indication of the viewer's selection. On a periodic basis (e.g.,daily, weekly, or monthly), the DVR may bundle these selectionindications together, encrypt the bundle, and send the bundle to afulfillment center which ensures that the brochures and/or informationassociated with the selection indications are sent as requested.

An advertisement may be provided by and originate with the DVR serviceprovider rather than another party. For example, a DVR service companymight donate space for advertisements during a political campaignseason. For another example, a DVR service company might take advantageof its control of the manner in which advertisements are selected inorder to advertise its own products and services.

An advertisement may comprise a still image, video, audio, videoaccompanied by audio, text, and/or any combination of these. Anadvertisement may be interactive, such that the advertisement's behavioris based at least to some extent upon user input. Such an advertisementmay be downloaded or broadcast from a remote source and stored withinthe DVR prior to the time that a user selects the option discussedabove, or in response to the user's selection of the option. In oneembodiment of the invention, the advertisement's content is designed topublicize a product or service that was shown, heard, or otherwisereferenced in the recorded television program that the user was justwatching.

In one embodiment of the invention, the options accompanied by the“save” and “delete” options include options that, when selected by auser, cause the DVR to display a user interface through which the usercan actually purchase a product or service. Once again, the product orservice may be one that was featured or referenced in the recordedtelevision program that the user was just watching.

For example, besides the “save” and “delete” options, the menu mightcontain one or more options that say, or are labeled, “buy . . . ”followed by the name of a product or service. The options may bevisually displayed and/or audibly spoken. In response to a user'sselection of such an option, the DVR may display a user interface. Theuser can view a list of products and/or services, and the prices ofeach, within the user interface. Through the user interface, the usercan select a product or service for purchase and then supply paymentinformation (e.g., credit card information) and delivery information(e.g., shipping address information). The DVR may upload the paymentinformation and delivery information to a remote source. For anotherexample, through the user interface, the user can approve the additionof an item to a “shopping cart” that is associated with a particularwebsite. The DVR may responsively instruct the particular website (e.g.,via the Internet) to add the item to the “shopping cart” associated withthe user's account on the particular website. Later, the user may usehis computer to log on to the website and complete the transaction—forexample, by purchasing the item that was added to the “shopping cart”via the DVR. For another example, the DVR may send, to the user's e-mailaccount, an e-mail message that contains a coded URL. The URL may allowthe user to complete the purchase on the particular website.

For another example, besides the “save” and “delete” options, the menumight contain one or more options that contain questions to which theuser may submit a response. For example, a menu option might say, “Howwould you rate” and then identify a program, an actor, a product, aservice, etc.

In one embodiment of the invention, instead of or in addition to theoptions discussed above, the same DVR-generated screen which containsthe “save and delete” menu additionally comprises one or more actualadvertisements that the DVR displays or plays concurrently with thedisplay of the menu. In one embodiment of the invention, instead of orin addition to the options discussed above, the same DVR-generatedscreen which contains the “save and delete” menu additionally comprisesan interface through which the DVR's user can actually purchase aproduct or service as described above.

At least some embodiments of the invention described above are highlybeneficial for several reasons. Because the advertisements and/or menuoptions may be presented to a DVR user very shortly after the user hasfinished, or nearly finished, viewing a recorded or downloadedtelevision program that featured or referenced a product or service, theproduct or service will still be fresh in the user's mind. Thisfreshness increases the probability that the user will be interested inlearning more about the product or service and/or purchasing the productor service.

Additionally, because the advertisements and/or menu options may bepresented to the user after the presentation of the recorded ordownloaded television program rather than during the presentation of therecorded or downloaded television program, the user is less likely to beirritated by the presentation of the advertisements and/or menu options.The user's viewing experience does not need to be interrupted or alteredby the presentation of the advertisements. The presentation of theadvertisements and/or menu options is minimally invasive. Moreover,because the advertisements and/or menu options do not need to bepresented within copyrighted television programs, copyright issues maybe avoided.

Furthermore, because the advertisements and/or menu options may bepresented within the same screen that already comprises the “save ordelete” menu, at least some embodiments of the invention can beimplemented with very little modification to existing DVRs. Minorupgrades to the software executing on the DVRs can be uploaded to theDVRs, thereby causing the DVRs to present enhanced promotionalinformation on previously existing screens. Users who are alreadyfamiliar with the “save or delete” menu are unlikely to be confusedmerely by the addition of such enhanced promotional information to thescreens which they already expect to see when a recorded or downloadedtelevision program finishes playing.

Embodiments of the invention summarized above are described below ingreater detail, along with some alternative embodiments of theinvention.

2.0 System Structural Overview

FIG. 1 is a block diagram that illustrates a system in which enhancedpromotional information is presented to a user in response to theoccurrence of certain events, such as the completion of the playing of arecorded television program, according to one embodiment of theinvention. The system comprises DVR 101, which is communicativelycoupled to a network 105 such as the Internet, Local Area Network (LAN),and/or Wide Area Network (WAN), through any proper communicationinterface, such as an Ethernet or other communications port. DVR 101 mayinitiate a connection to network 105. In one embodiment of theinvention, DVR 101 connects to network 105 through an RJ-11 port, toconnect via a dial-up modem. In one embodiment of the invention, DVR 101connects to network 105 through a USB port for a wireless or wiredEthernet adapter. In one embodiment of the invention, DVR 101 connectsto network 105 through a direct Ethernet connection. The functionalityof a DVR is typified in U.S. Pat. No. 6,233,389, which is owned by theApplicant and is hereby incorporated by reference.

Alternatively, DVR 101 can be any set-top box that is capable ofreceiving broadcast program content. Although some embodiments of theinvention are described in the context of DVRs specifically, embodimentsof the invention also are applicable to and capable of being implementedin other multimedia devices. As used herein, the phrase “multimediadevice” is a device that can record and play motion video. Multimediadevices include DVRs and MP3 players, among other devices. DVRs may bereferred to, alternatively, as Personal Video Recorders (PVRs) and/orDigital Media Recorders (DMRs), and may stand alone or may be combinedwith multimedia receivers from cable companies, satellite companies,telephone companies, Internet companies, and/or other providers ofmultimedia information.

In one embodiment of the invention, a broadcaster 102 provides broadcastprogram content to DVR 101 via cable, satellite, terrestrialcommunication, or other transmission methods. As used herein, “broadcastprogram content” includes any multimedia content, such as audio, image,or video content, for example. Television programs are an example ofsuch broadcast program content. Broadcaster 102 may provide broadcastprogram content to DVR 101 in the form of one or more content streams.In an alternative embodiment of the invention, DVR 101 downloads adigitally encoded television program from broadcaster 102 via theInternet; the television program does not need to be broadcast usingconventional television broadcast methods.

An advertiser 104 may provide additional content to service provider103. For example, advertiser 104 or broadcaster 102 may provide brandadvertisements (e.g., commercials, videos, images, text, etc.) toservice provider 103. Service provider 103 may associate theadvertisements with broadcast programming content that is to betransmitted to DVR 101 by broadcaster 102.

In one embodiment of the invention, DVR 101 periodically downloadsadvertisements and/or other promotional information from serviceprovider 103 through network 105. For example, DVR 101 may periodicallydownload and store menu options that are to be presented within a “saveor delete” menu that is to be presented at the conclusion of atelevision program, as discussed above. Additionally or alternatively,advertisements and/or other promotional information may be downloaded inresponse to the occurrences of specified events; for example, inresponse to the user's viewing of the end of a program, DVR 101 maydownload an advertisement that is associated with the program. Besidesbeing downloaded, DVR 101 may receive and store advertisements and/orother promotional information that have been broadcast to DVR 101. Eachadvertisement and menu option downloaded or broadcast to DVR 101 may beexpressly associated with one or more content streams. Each such contentstream may represent a separate television program.

In one embodiment of the invention, DVR 101 communicates with serviceprovider 103. Service provider 103 provides program guide data,graphical resources such as brand icons and pictures, serviceinformation, software programs, advertisements, and other forms of datato DVR 101. Service provider 103 provides, to DVR 101, data that enablesDVR 101 to operate independently of service provider 103, so that DVR101 can perform autonomous recording functions. In one embodiment of theinvention, communications between DVR 101 and service provider 103 flowthrough a secure distribution architecture so that the user's privacyand all data are protected from eavesdroppers.

FIG. 2 is a block diagram that illustrates an overview of the internalstructure and components of a DVR, according to one embodiment of theinvention. Although FIG. 2 illustrates some of the components that maybe present in a DVR, in some embodiments of the invention, DVRs maycomprise fewer or more components than are shown in FIG. 2.

In one embodiment of the invention, DVR 202 comprises a signal converter254. Signal converter 254 comprises components that digitize an analogtelevision signal into a digital data stream. Signal converter 254 alsocan accept a digital data stream as input.

DVR 202 can receive broadcast signals from an antenna, a cable TVsystem, a satellite receiver, and/or other receiving mechanisms, viainput 252A. Input 252A may comprise a plurality of tuning modules thatallow a plurality of signals to be received and recorded simultaneously.

Recording module 260 records incoming content streams by storing thecontent streams on at least one storage facility, such as storage 264.Storage 264 may be a hard disk drive, for example. Storage 264 also maycomprise other forms of storage media, such as flash memory, forexample. Storage 264 is designed to preserve segments of the contentstreams at least temporarily. Storage 264 may be internal to and/orexternal to DVR 202. Signal converter 254 retrieves segments of a storedcontent stream, converts the content stream into an analog signal, andthen modulates the signal onto a radio frequency (RF) carrier. Theanalog signal is then delivered to a television set through output 252B.

Alternatively, output 252B may deliver a digital signal to a televisionset or video monitor. For example, DVR 202 may utilize a Digital VisualInterface (DVI) port for sending digital signals to a television set orvideo monitor via a DVI cable. For another example, DVR 202 may utilizea High Definition Multimedia Interface (HDMI) port for sending digitalsignals to a television set or video monitor via an HDMI cable.

DVR 202 also comprises a communication interface 262 through which DVR202 communicates over network 105 via Ethernet, wireless network, modem,or other communications mechanism. DVR 202 may be integrated into atelevision system such that the components described above are housed ina television set capable of performing the functions of each componentof DVR 202.

In one embodiment of the invention, DVR 202 comprises a plurality ofcomponents that are designed to receive, record, store, transfer andplayback digital data signals from a plurality of sources, such as apersonal computer (PC), another DVR, a service provider, and/or acontent server. In one embodiment of the invention, DVR 202 can transferdigital data signals to another DVR or a PC. Using encoder 256A anddecoder 256B, DVR 202 may encode and decode digital signals into avariety of formats for playback, storage, or transfer. Usingencryptor/decryptor 258, DVR 202 can encrypt or decrypt digital datasignals for the secure storage, transfer or playback of the digital datasignals.

3.0 Example Techniques

FIG. 3 is a flow diagram that illustrates the steps of a techniquethrough which a DVR presents promotional information to a DVR user inresponse to the occurrence of certain events, such as the completion ofthe playing of a recorded television program, according to oneembodiment of the invention. The technique described below may beperformed by DVR 101, for example. In various alternative embodiments ofthe invention, more or fewer steps than those shown in FIG. 3 may beperformed.

In block 302, a content stream is received. The content stream typicallyrepresents a television program. For example, DVR 101 may receive acontent stream from broadcaster 102 over a cable, via a satellite dish,or via the Internet. Broadcaster 102 may “push” the content stream toDVR 101, or DVR 101 may “pull” the content stream from broadcaster 102.

In block 304, the content stream is at least partially stored. Forexample, DVR 101 may store the content stream on storage 264.

In block 306, the content stream is at least partially played. Forexample, in response to DVR 101 receiving user input from a remotecontrol, DVR 101 may play a stored content stream, which represents atelevision program. DVR 101 may play the stored content stream byreading the stored content stream from storage 264 and streaming thecontent stream to a television set to which DVR 101 is connected.

In block 308, it is determined whether the end of the content stream hasbeen reached. For example, DVR 101 may determine whether the last partof the content stream has been streamed to the television set. If theend of the content stream has been reached, meaning that the entirecontent stream has been played completely, then control passes to block314. Otherwise, control passes to block 310.

In block 310, it is determined whether user input, which instructs theDVR to stop playing the content stream, has been received. For example,DVR 101 may determine whether a user has pressed a “stop” button (orsome other button that instructs DVR 101 to stop playing the contentstream) on a remote control. If user input that instructs the DVR tostop playing the content stream has been received, then control passesto block 312. Otherwise, the content stream continues to play, andcontrol passes back to block 308.

In block 312, it is determined whether a least a specified portion ofthe content stream has been played. For example, DVR 101 may determinewhether at least 90% of the content stream has been played, or whetherat least 55 minutes of the content stream have been played, or whethersome other specified threshold, which indicates that the content streamwas almost finished when the user input was received in block 310, hasbeen crossed. If at least the specified portion of the content streamhas been played, then control passes to block 314. Otherwise, controlpasses to block 324.

In block 314, a menu, referred to herein as the “save or delete menu,”is displayed. The menu is sometimes alternatively called the “deletedialog.” The menu comprises selectable options for (a) deleting thestored content stream, (b) not deleting the stored content stream (i.e.,retaining the stored content stream), and (c) one or more other optionsthat, when selected, will cause corresponding advertisements to beplayed or displayed, as is described below.

For example, DVR 101 may cause a connected television set to display ascreen or dialog box that comprises options that the user can selectusing a remote control. Besides the “delete” and “don't delete/save”options discussed above, the screen or dialog box also may include anoption that says “Interested in music from this program?” and/or anoption that says “Tell me more about . . . ” followed by the name of aproduct that was shown, heard, or otherwise referenced in the televisionprogram, for example. The options may be visually displayed and/oraudibly spoken.

FIG. 5 illustrates an example of an enhanced save or delete menuaccording to an embodiment of the invention. In addition to the usualoptions of “Delete now” and “Keep this recording,” the menu includesanother option that reads “Special offer from Ford Trucks.” Selection ofthis other option might take the user to another menu such as thatdepicted in FIG. 6 below.

Referring again to FIG. 3, in block 316, user input, which indicatesselection of at least one option, is received. For example, DVR 101 mayreceive commands from a remote control in response to a user pushingbuttons on the remote control. The commands may instruct DVR 101 tocause one of the options to be highlighted, and to cause a highlightedoption to be selected.

In block 318, it is determined whether the selected option is one of theoptions other than the “delete” option and the “don't delete/save”option—in other words, one of the “promotional” options referred to inblock 314. DVR 101 may make such a determination, for example. If theselected option is either the “delete” option or the “don't delete/save”option, then control passes to block 322. Otherwise, if the selectedoption is one of the “promotional” options, then control passes to block320.

According to one embodiment of the invention, in block 320, anadvertisement that is associated with the selected option is displayedor played. For example, if the selected option was “Tell me more about .. . ” followed by the name of a product, then DVR 101 may cause anadvertisement previously received from service provider 103 and storedwithin storage 264 to be streamed to the connected television set. Theadvertisement may be in the form of a televised commercial, for example.The subject of the advertisement may be the product mentioned in theselected option, for example. According to one embodiment of theinvention, after the advertisement has been displayed or played, controlpasses back to block 314, at which time a new or different advertisementmay be displayed along with the “save or delete” menu. According toanother embodiment of the invention, the advertisement is not displayedimmediately after the user's selection of a promotional option; instead,an additional dialog, such as the one shown with reference to FIG. 6, ispresented first. FIG. 6 illustrates an example of a menu that might bedisplayed after a user's selection of an option other than a “save” or“delete” option, according to an embodiment of the invention. The menushown in FIG. 6 allows the user to indicate, after selecting the otheroption, but before the special offer is displayed, whether the userwould like to save or delete the program that the user has recentlyfinished watching. Allowing the user to make the save or delete decisionat this time can make the user's decision easier because the program isstill fresh in the user's mind, and there may be less ambiguity as towhat the user is being asked to decide.

Alternatively, in block 322, the stored content stream is saved ordeleted in accordance with the selected option. For example, if theselected option was “delete,” then DVR 101 may mark the space withinstorage 264 that was occupied by the just-played content stream as beingavailable to store other content streams. For another example, if theselected option was “don't delete/save,” then DVR 101 may maintain andpreserve the content stream within storage 264, at least until the userdecides to delete the content stream at a later time.

Alternatively, in block 324, the menu discussed with reference to block314 is not displayed. For example, if DVR 101 determines that aninsufficient amount of the content stream has been played to a user,then it might not be practical to ask the user whether the user wouldlike to view advertisements or other promotional information that wasshown, heard, or otherwise referenced in the content stream. Instead,DVR 101 may simply stop playing the content stream and cause theconnected television set to display another menu, such as a menu thatallows the user to resume playing the same content stream, or to beginplaying a different stored content stream that represents anothertelevision program. A “program screen,” to which the user is returned ifthe user doesn't select “delete,” may display an advertisement, and/orlink off a list of all advertisements relevant to the content stream.Alternatively, DVR 101 may simply return to playing, in real-time, atelevision program that currently is being received at DVR 101.

According to one embodiment of the invention, the “save or delete” menucomprises selectable options that correspond to (a) viewing anadvertisement now or (b) viewing an advertisement later. In such anembodiment, if the user selects the option that corresponds to viewingthe advertisement now, then DVR 101 plays the advertisement as describedabove. However, if the user selects the option that corresponds toviewing the advertisement later, then DVR 101 instead creates a “programshortcut” (e.g., a menu entry) in the “now playing” menu that listsprograms that are currently available for viewing through the DVR. The“program shortcut” is associated with the advertisement that the useropted to view later. User selection of the “program shortcut” causes DVR101 to play the advertisement. The advertisement may be stored on DVR101 prior to the time that the “program shortcut” is created.Alternatively, DVR 101 may download the advertisement from a remotesource in response to the user's selection of the “program shortcut” orin response to the creation of the “program shortcut.”

3.1 Save/Delete Menu Screen Alternatives

As is discussed above with reference to block 320, in one embodiment ofthe invention, when a user selects an option other than the “delete” and“don't delete/save” options, DVR 101 causes an advertisementcorresponding to the selected option to be displayed or played.

In one embodiment of the invention, in addition to or instead of optionsthat cause DVR 101 to play an advertisement, the menu comprises one ormore options that, when selected, cause DVR 101 to display additionalmenus and/or forms. For example, the options accompanied by the “save”and “delete” options may include an option that says “more options,” theuser selection of which causes DVR 101 to display further menus whichcomprise other user-selectable options such as those described herein.For another example, the options accompanied by the “save” and “delete”options may include options that, when selected by a user, cause DVR 101to display a user interface through which the user can actually purchasea product or service.

For example, besides the “save” and “delete” options, the menu mightcontain one or more options that say, or are labeled, “buy . . . ”followed by the name of a product or service. The options may bevisually displayed and/or audibly spoken. In response to a user'sselection of such an option, DVR 101 may cause a user interface to bedisplayed on the connected television set. The user can view a list ofproducts and/or services, and the prices of each, within the userinterface. Through the user interface, the user can select a product orservice for purchase and then supply payment information (e.g., creditcard information) and delivery information (e.g., shipping addressinformation). DVR 101 may upload the payment information and deliveryinformation to a remote source.

For another example, in response to a user's selection of a menu optionthat says “Interested in music from this program?”, DVR 101 may either(a) display a menu or form that allows a user to purchase a compact disc(CD) that includes songs heard on the television program, or apay-per-view program, or an advertisement, represented by thejust-played content stream, (b) send, to the user's e-mail address, ane-mail message that comprises advertisements and/or offers for such a CDor the songs thereon, or (c) send, to a connected PC, signals that causethe PC to download the songs from an on-line music provider and storethose songs on the PC and/or a portable digital music playing deviceconnected to the PC. In various embodiments of the invention, DVR 101may take a variety of other actions in response to the selection ofvarious menu options; the actions described herein should not beconsidered an exhaustive list. For example, the DVR may send, to theuser's e-mail account, an e-mail message that contains a coded URL. TheURL may allow the user to complete a purchase on a website.

In one embodiment of the invention, the product that the user purchasesthrough the DVR-displayed interface is actually downloaded and played bythe DVR. For example, in response to the user purchasing a music video(possibly featuring music heard during the television program the userjust watched), the DVR may automatically download the music video indigital form, store the music video on the DVR's storage, and then playthe music video. There is no limitation on the kind of content that canbe downloaded and displayed by the DVR. Other examples of content thatthe DVR may download and display include movie trailers andinfomercials.

In one embodiment of the invention, in addition to or instead of theadditional menu options discussed above, the screen or dialog box thatcomprises the “save” and “delete” options additionally comprises one ormore advertisements which are played or displayed within the same screenor dialog box. Thus, in some embodiments of the invention, userselection of a menu option is not a prerequisite to the display of anadvertisement at the conclusion of a television program.

In one embodiment of the invention, in addition to or instead of theadditional menu options discussed above, the screen or dialog box thatcomprises the “save” and “delete” options additionally comprises a userinterface or form through which a user can actually purchase products orservices. Thus, in some embodiments of the invention, user selection ofa menu option is not a prerequisite to the display of a “purchase” userinterface or form at the conclusion of a television program.

Thus, available space within the existing screens usually shown by a DVRat the conclusion of a television program can be used more efficientlyand profitably. Some techniques for deriving revenue from the display ofadvertisements through a DVR are described below.

Although embodiments of the invention described above refer toadvertisements, offers, and/or menu options as being displayed within orconcurrently with a “save or delete” menu, other embodiments of theinvention are also possible. For example, in various embodiment of theinvention, menu options and/or advertisements such as those discussedabove might be displayed on or with menus and/or screens other than the“save or delete” menu, and at times other than after the playing of atelevision program.

For example, in one embodiment of the invention, a DVR displays (and/oraudibly presents), in a “now playing” or “actions” menu or dialog, alist of television programs which have been recorded and are availablefor viewing, and/or a list of actions that can be taken relative to oneor more such recorded television programs. With each television programfor which advertisements or offers are available, a selectable optionsuch as “see offers” might be displayed and/or audibly presented.Selection of such an option may cause the DVR to present a subsequentmenu that comprises menu options that are associated with advertisementsassociated with the corresponding television program. Selection of theselatter menu options may cause the DVR to play or display the associatedadvertisements. For another example, advertisements and/or menu optionsof the kind discussed above may be presented in a screen that listssearch results for a program to record. For another example,advertisements and/or menu options of the kind discussed above may bepresented in a screen that lists options for recording a program thathas been found via a search. For another example, advertisements and/ormenu options of the kind discussed above may be presented in a screenthat lists contents of a “folder” that contains multiple episodes of aparticular television series.

For another example, advertisements and/or menu options of the kinddiscussed above may be presented in a screen that is displayed duringthe time that a playing program has been paused, e.g., in response to aviewer's activation of a “pause” button on a remote control. In oneembodiment of the invention, the advertisements and/or menu option thatare displayed while the DVR is in “pause” mode may be selected based onthe content that was being displayed at the time that the DVR entered“pause” mode. In one embodiment of the invention, while a content streamis being played, the DVR causes the display to show an indicator (e.g.,in the corner of the display) which flashes when new relevant ads wouldappear in response to the user's selection of the “pause” feature atthat time. In one embodiment of the invention, the “trickplay” bar (abar which the DVR shows on the display when the user fast-forwards orrewinds a content stream), contains markers that indicate temporallocations at which the user's activation of the “pause” feature willcause the DVR to display advertisements and/or other information in the“pause” screen.

In one embodiment of the invention, when the DVR's user activates the“pause” feature, the DVR sends, to a server, the last minute of closedcaptioning information. The server uses this closed captioninginformation to select the advertisement or other information that willbe displayed on the “pause screen.” In one embodiment of the invention,the information displayed on the “pause screen” is non-commercialinformation which is determined to be of probably interest to the user;such information may be shown to entice the user to use the “pause”feature.

In one embodiment of the invention, a list of relevant advertisements isassociated with an entry for a particular program in the DVR's“recording history.” In such an embodiment of the invention, the DVR iscapable of displaying the advertisements to a user at the user'sdiscretion even after the user has caused the particular program to bedeleted from the DVR's persistent storage.

In the discussion above, “advertisements” also may be surveys fromnetworks and/or production companies. Such networks and/or productioncompanies may be seeking viewer feedback on “pilot” programs. Thedownload of such surveys may be restricted to a specified group or panelof viewers. Additionally or alternatively, “advertisements” may bevideos that are associated with “continuing education” credits (e.g.,for legal, medical, or real estate continuing education programs). Aftera user can viewed such a video, the DVR may display, to the user, a quizthat the user can complete using the DVR's controls. The user'ssuccessful and correct completion of the quiz questions may cause thecontinuing education credits to be granted to the user.

While in one embodiment of the invention, menu options and/oradvertisements are shown in “save or delete” menus which normally aredisplayed after a television program has been substantially or entirelyplayed, in various embodiments of the invention, such menu optionsand/or advertisements can be (additionally or alternatively) displayedby the DVR anywhere, at any time. However, as is discussed above, a goalof at least one embodiment of the invention is to present such menuoptions and/or advertisements in a place and time that will not disruptthe DVR user's viewing experience.

3.2 Deriving Revenue from DVR-Placed Advertising

According to one embodiment of the invention, representatives of serviceprovider 103 (referred to herein simply as “the service provider”) enterinto an agreement with selling entities (e.g., companies andindividuals) who want their products and/or services to be advertised.The service provider agrees to configure various DVRs to displayadvertisements in response to occurrences of specified events (e.g.,user selection of corresponding menu options) in exchange for monetarycompensation or other payment from the selling entities.

There are various ways in which such agreements might be reached.According to one embodiment of the invention, the service providerdetermines which products or services are going to be shown, heard, orotherwise referenced within a given television program. The serviceprovider can make this determination, for example, by watching an early(e.g., East Coast) feed of the television program and noting whichproducts and services are shown, heard, or otherwise referenced therein.Because DVR users often view recorded television programs long afterthose programs have been recorded on those users' DVRs, the serviceprovider has adequate time to make the determination beforeadvertisements need to be available via those users' DVRs.Alternatively, a broadcaster (e.g., a television network) may determine,from television program scripts, which products and/or services aregoing to be shown, heard, or otherwise referenced in the correspondingtelevision programs. In one embodiment of the invention, the DVRprovider offers, to the broadcaster, tools through which the broadcastercan offer, for sale to advertisers, space in the “save or delete” dialogfor display of advertisements that relate to the products and/orservices. The broadcaster optionally may request payment from the selleror provider of the products and/or services that are to be displayed inexchange for the display of the advertisements in the “save or delete”dialog. In one embodiment of the invention, the DVR provider offers, tothe broadcaster, tools through which the broadcaster can place contentof the broadcaster's own choosing in the “save or delete” dialog after aspecified program. In one embodiment of the invention, a multichannelvideo programming distributor (MVPD) that distributes DVR productsand/or services obtains television program scripts from those who areable to provide such scripts in advance of the time that thecorresponding television programs are broadcast. In one embodiment ofthe invention, production companies and/or product placement agencies,who may know even sooner than networks the kind of content that is goingto be shown in a particular television program, may interact with theDVR provider in the same manner in which a broadcaster interacts withthe DVR provider as described above.

After determining which products and/or services are going to be shown,heard, or otherwise referenced, the service provider may contact theselling entities who provide those products and/or services, and offerto upload the selling entities' advertisements to specified DVRs inexchange for some payment from the selling entities. Because the DVRsmay be implemented with built-in functionality that proactively informsthe service provider as to which television programs are stored on theDVRs, and which of those television programs have not yet been played,the service provider can inform the selling entities precisely how manypotential viewers of each television program there are. The serviceprovider can use these numbers as leverage in reaching an agreement withthe selling entities.

After an agreement has been reached, the service provider may uploadadvertisements and/or offers selected by the participating sellingentities to selected DVRs on which the pertinent television program hasbeen stored. Within the DVRs, an association is established between theselected advertisements/offers and the pertinent television program. Forexample, if a selling entity has agreed to pay the service provider forshowing selected advertisements at the end of a particular televisionprogram, then the service provider may cause the selected advertisementsto be uploaded to and stored on selected DVRs. Within the selected DVRs,the selected advertisements are associated with the particulartelevision program.

Later, when the users of the selected DVRs have finished watching theparticular television program (or performed other specified eventsrelative to the particular television program), the selected DVRsdisplay “save or delete” menus with additional options related to theadvertisements associated with the particular television program, as isdiscussed above.

Thus, according to one embodiment of the invention, a selling entityessentially buys, from the service provider, the privilege of having theselling entity's menu option(s) displayed in the “save or delete” menuthat will be shown by a DVR after a specified television program,selected by the selling entity, has been played by the DVR.

In various embodiments of the invention, representatives of the serviceprovider may initiate contact with representatives of selling entities,or, alternatively, representatives of selling entities may initiatecontact with representative of the service provider, assuming that theselling entities are aware that the service provider offers advertisingand promotional services such as are described herein.

Regardless of how an agreement between the service provider and aselling entity is initially reached, the agreement may specify that theselling entity is to pay the service provider some additional sum foreach DVR that actually causes the selling entity's advertisement to bedisplayed or played (e.g., in response to a DVR user selecting a menuoption that corresponds to that advertisement). In one embodiment of theinvention, each DVR is equipped with monitoring mechanisms that send, toservice provider 103 over network 105, the identities of alladvertisements that the DVR has displayed or played. The DVRs cantransmit such information periodically, or in response to queriesinitiated by the service provider, for example. Thus, the serviceprovider can determine how many times a particular advertisement hasbeen displayed or played, and charge the appropriate selling entityaccordingly.

Embodiments of the invention are described above with reference tonegotiations and agreements pertaining to specific television programs.According to various embodiments of the invention, such negotiations andagreements may pertain, for example, (a) to a specified episode of atelevision program, (b) to all episodes or a specified televisionprogram, to all television programs that match specified characteristics(e.g., being in a specific genre, featuring a specified actor, etc.), orother aspects of content streams. Advertisements may be associated witha television program, keyword in a television program, a genre to whicha television program belongs, demographics information about DVR userswho watch a television program, and/or keywords that are contained in aclosed captioning stream that is associated with a television program.Thus, advertisements may be “matched” to television programs based onthe television program episode, a series to which the television programepisode belongs, a genre to which the television program series belongs,actors that appear in the television program, a director of thetelevision program, and/or other factors.

In an embodiment of the invention described above, a service providerdetermines how many potential viewers of each television program thereare. In one embodiment of the invention, the service provider makes thisdetermination based at least in part by determining how many DVRs havescheduled a recording of each television program. In one embodiment ofthe invention, the service provider makes this determination based atleast in part on surveys and/or statistical sampling. In one embodimentof the invention, a DVR service maintains data about the profiles ofusers that watch certain programming, and about the propensities ofthese users to select certain advertisements.

3.3 Automated Bidding for Menu Option Slots

In some embodiments of the invention, the space available for displayingadditional advertisement-related menu options in a “save or delete” menumay be limited. Additionally, in cases where more than one such menuoption can be presented simultaneously, the order in which such menuoptions occur relative to each other may be of significant value toselling entities that pay for such menu options. For example, a sellingentity might be willing to pay more to have its menu option displayed atthe top of a list of advertisement-related menu options on a “save ordelete” menu.

Therefore, in one embodiment of the invention, for each televisionprogram, selling entities can bid for menu option “slots” associatedwith that television program. In one embodiment of the invention, a“save or delete” menu's slots (which may be limited in number) arescheduled to be filled with the menu options of the highest-biddingselling entities after bidding concludes. In one embodiment of theinvention, the first-listed menu option slot is filled with the menuoption of the highest bidder; the second-listed menu option slot isfilled with the menu option of the next-highest bidder; and so on. Inone embodiment of the invention, the first-listed menu option is“highlighted” by default, so that if the DVR user does not select adifferent item, the first-listed menu option will be the one selectedwhen the user presses “select,” “enter,” or a similar button on a remotecontrol.

In one embodiment of the invention, the bidding process is automated.For example, in one embodiment of the invention, the service providermaintains a web server on which a server application executes. Theserver application accepts bids from multiple selling entities relativeto specified television programs. Selling entities may submit such bidsvia web browser applications which transmit the submitted bids to theremote server application over a network (e.g., network 105). Forexample, the server application may transmit, to the selling entities'web browser applications, web pages that comprise forms through whichthe selling entities can enter bids. Upon submission of these forms, theweb browser applications transmit the forms' contents to the serverapplication, which updates locally stored bid data accordingly.

In one embodiment of the invention, for each television program forwhich bids can be submitted, the server application indicates (e.g., ona web page) a number of DVRs on which that television program iscurrently stored but currently un-played. Such a statistic may helpbidding selling entities to appreciate the value of the slots upon whichthey are bidding. The server application can automatically obtain thesestatistics by communicating with the DVRs over a network or by queryinga database in which information obtained from the DVRs has been stored.

In one embodiment of the invention, for each television program forwhich bids can be submitted, the server application identifies (e.g., ona web page) the products and/or services that are known to be shown,heard, or otherwise referenced in that television program. Suchidentifying information may help bidding selling entities to select thetelevision program slots on which they would like to bid.

Bidding for the slots associated with a particular television programmay remain open until a time specified by the service provider. In oneembodiment of the invention, bidding for a particular televisionprogram's associated “save or delete” menu option slots begins as soonas at least one DVR has scheduled a current or future recording of thetelevision program, and remains open as long as the particulartelevision program remains stored, but un-played, on at least aspecified number of DVRs.

The server application may be implemented in such a manner that eachselling entity can opt to automatically increase its bid relative to aselected television program if that selling entity is outbid by anotherselling entity. In one embodiment of the invention, each selling entitycan specify a maximum amount to which its bids can be automaticallyincreased relative to a specified television program. In the event thata selling entity is outbid, the server application can automaticallyincrement that selling entity's bid to be higher than the next-highestbid, unless doing so would cause the selling entity's bid to exceed themaximum amount specified by the selling entity.

In one embodiment of the invention, each selling entity can specify a“standing bid” through the server application. When a selling entityspecifies a “standing bid,” the server application automatically placesbids on the selling entity's behalf for slots that are associated withany television program that is going to show or otherwise represent theselling entity's known products and/or services. In one embodiment ofthe invention, each “standing bid” is associated with a “distribution”threshold specified by the selling entity. When such a threshold isspecified, no bids for slots corresponding to a particular televisionprogram will be automatically placed on the selling entity's behalfunless the particular television program is known to have been recordedby a number of DVRs that is at least as high as the specified threshold.

In one embodiment of the invention, advertisement placement isautomated. For example, according to one embodiment of the invention, anadvertiser authors his own advertisement based on one or more of aplurality of specified templates. After authoring the advertisement, theadvertiser uses a web-driven “self service” interface to indicate wherethe advertisement is to be placed.

3.4 Tagging Television Programs with Advertisement IDs

According to one embodiment of the invention, “tags” are placed intocontent streams that are streamed to DVRs (e.g., by broadcaster 102).These tags are codes which are not visible to a human viewer, but whichare detectable by a DVR which receives the content stream. The tagsidentify the products and/or services that will be shown, heard, orotherwise referenced in the television program that the content streamrepresents.

In one embodiment of the invention, in generating the additional menuoptions for the “save or delete” menu as described above, a DVRdetermines, from the tags embedded in a content stream, which productsand/or services were shown, heard, or otherwise referenced in thatcontent stream. In response to determining these products and/orservices, the DVR generates a “save or delete” menu which comprises menuoptions which correspond to these products and/or services, if suchcorresponding menu options or advertisements corresponding to those menuoptions are available on the DVR.

In one embodiment of the invention, each tag additionally indicates anamount that a selling entity is willing to pay to have an advertisementor corresponding menu option displayed. Prior to the time that the tagsare placed into the content stream, the selling entities that arewilling to pay to have advertisements or corresponding menu optionsdisplayed may be ranked by the amount that they are willing to pay. Inaddition to the amount that a particular selling entity is willing topay, a tag also may indicate the particular selling entity's rankrelative to other selling entities that also were willing to pay.Advertisements and/or menu options corresponding to the tags with thehighest “N” amounts may be selected for display in the “save or delete”menu.

3.5 Adjusting Menu Options Based on Hit Rates

According to one embodiment of the invention, DVRs track how often usersselect each promotional menu option that is presented in addition to the“don't delete/save” and “delete” options in the “save or delete” menu.The DVRs transmit this “hit rate” information to service provider 103.In one embodiment of the invention, service provider 103 uses this “hitrate” information to re-order the menu options; menu options that areselected often may be placed closer to the top of the list of menuoptions, while menu options that are selected less often may be placedcloser to the bottom of the list of menu options. Service provider 103may transmit such “hit rate” based ordering information to the DVRs, andthe DVRs may re-order their lists of menu options accordingly.

In one embodiment of the invention, information regarding which menuoptions were selected through a particular DVR is maintained for eachDVR. Each DVR may transmit this information to service provider 103.Based on this information, service provider 103 may select future menuoptions and/or advertisements for placement on each DVR. For example, ifa user tends to select menu options that correspond to a particularcategory of product or service, then service provider 103 may detectthis pattern and, in the future, service provider 103 may send, to thatuser's DVR, additional menu options and/or advertisements that pertainto products and/or services in the same or similar categories.

3.6 Offers to Record Similar Television Programs

As is described above, in certain embodiments of the invention, menuoptions pertaining to advertisements may be displayed in a “save ordelete” menu that is normally shown at the conclusion of a televisionprogram. In one embodiment of the invention, in addition to or insteadof these menu options, a menu option reading “record other programs likethis one” may be displayed (and/or audibly spoken) with other menuoptions in the “save or delete” menu (and/or in other screens and menusthat the DVR displays, such as: a program screen that is shown before aprogram begins playing, a “recording history” that is shown after aprogram is deleted, a screen that displays results of a search for aprogram, etc.). In response to a user's selection of such a menu option,the user's DVR or service provider 103 determines a set of one or morecategories into which the just-watched television program fits, andautomatically configures the DVR to automatically record, in the future,one or more other television programs which also fit into thosecategories. Additionally or alternatively, the user's selection of sucha menu option may cause the user's DVR to download, proactively, the oneor more other television programs from service provider 103 withoutwaiting for service provider 103 to broadcast those television programsat some future time.

In one embodiment of the invention, the menu options identify the titlesof one or more other television programs which are determined to fitinto the same categories as the just-watched television program. In oneembodiment of the invention, service provider 103 causes a particulartelevision program to be included within the list of menu options inresponse to reaching an agreement with a selling entity (such as atelevision network) that the selling entity will pay service provider103 a specified amount in exchange for service provider 103 causing theparticular television program to be included in the list.

3.7 Pay-Per-View and Other Implementations

Some “pay-per-view” services prohibit content streams from being storedwithin a DVR's storage for legal or other reasons. According to oneembodiment of the invention, content streams flow from broadcaster 102through DVR 101 without being stored on DVR 101. At the conclusion orbeginning of the streaming of such a content stream, one or moreadvertisements and/or promotional menu options may be displayed on aDVR-generated screen, even though no portion of the content streamactually needs to be deleted from DVR 101. Thus, embodiments of theinvention are not limited to the presentation of advertisements andpromotional menu options on “save or delete” menu screens specifically.Advertisements and promotional menu options may be presented at theconclusion of “pay-per-view” content streams which are never actuallystored on a DVR.

In one embodiment of the invention, DVR 101 causes one or moreadvertisements and/or promotional menu options to be displayed at thetime that the DVR user stops watching live television (e.g., to beginwatching a recorded program instead). The advertisements and/orpromotional menu options displayed to the user may be selected based oncharacteristics of the live television program that the DVR user hadbeen watching until that time, for example. Advertisements may be“surfaced” in a “channel banner” when the DVR user “rolls over” anadvertising indicator icon in the “channel banner.”

In one embodiment of the invention, the user's selection of one or moreadvertisements and/or promotional menu items displayed at the beginningof, or prior to, the streaming of a content stream causes credits to beplaced in a user-associated account. In one embodiment of the invention,the user can apply such credits toward the payment for a “pay-per-view”content stream presentation. In one embodiment of the invention, theuser can apply such credits toward the payment of DVR service fees.

3.8 Dynamic Advertisement Selection

In one embodiment of the invention, the advertisements or otherpromotional information displayed by the DVR in the “save or delete”menu may be selected dynamically based on various specified factors. Forexample, an advertisement about a product and/or company might beselected for display from among a group of advertisements about productsand/or companies based on electronic program guide information.Electronic program guide information generally comprises metadata aboutprograms. The metadata typically is provided to the DVR service providerby an electronic program guide provider. For each program, such metadatamay include, for example, the title of the program, actors and actressesfeatured in the program, the program's director, keywords that pertainto the program, the program's rating (e.g., TV-G, TV-14, TV-MA, PG, R,etc.), and/or descriptive labels (e.g., adult situations, violence,brief nudity, etc.). For example, if the metadata associated with theprogram just viewed indicates that the program featured a particularactor, then an advertisement for a movie featuring that actor might bedisplayed in the “save or delete” menu. For another example, if themetadata associated with the program indicates that the program is“TV-G” rated, then an advertisement featuring products targeted towardchildren and families might be displayed.

For another example, the advertisement or other promotional informationmight be selected based on a genre to which the program belongs. Forexample, if the program is in a “home improvement” genre, thenadvertisements for home improvement and/or hardware stores may beselected for display. Such advertisements do not need to be directedtoward sales. Such advertisements may be informational in nature. Forexample, an advertisement might comprise a 2-minute video that describeshow one can tile a bathroom. Under such circumstances, the advertisementmight feature brands and products associated with and/or offered by ahome improvement and/or hardware store.

For another example, the advertisement or other promotional informationmight be selected dynamically based on information contained in theclosed-captioning stream.

For another example, the advertisement or other promotional informationmight be selected dynamically based on the viewer's past viewingbehavior, and/or the viewer's specified preferences. For example, a DVRmay keep a history of the commercials that the viewer has watched (i.e.,not skipped over without viewing). An advertisement or other promotionalinformation that pertains to a category that is associated with the mostviewed commercials may be selected for presentation in the “save ordelete” menu. For another example, a DVR may keep a history of theprograms that the viewer has watched. A majority of these programs maybe associated with a same program category. An advertisement or otherpromotional information that pertains to a product or company that isassociated with that program category may be selected for presentationin the “save or delete” menu.

For another example, the advertisement or other promotional informationmight be selected dynamically based on information known about the DVRowner's geographic location and/or demographic characteristics. Forexample, at the time that the DVR's owner registers the DVR, the DVRmight transmit, to a DVR service provider, information such as theowner's street address, zip code, age, gender, race, income, etc.Advertisements or other promotional information selected for display bya particular DVR may be selected based on such information that isassociated with the particular DVR's owner. Additionally oralternatively, advertisements or other promotional information may beselected based on demographic data that is associated with the “typical”viewer (e.g., a composite or average viewer) of a particular televisionprogram.

In one embodiment of the invention, advertisements and promotionalinformation eligible for presentation are filtered, prior topresentation, based on whether the DVR is currently is in a “safe” mode(e.g., “TiVo KidZone”). If the DVR is in a “safe” mode, then certainadvertisements deemed unsuitable for children may be omitted fromselection for display in the “save or delete” menu dialog. Additionallyor alternatively, if the DVR is currently in a “safe” mode, then certainadvertisements that are associated with or targeted toward a children'sdemographic may be selected for display over other advertisements. Thus,in one embodiment of the invention, advertisements are selected based ona current “mode” to which the DVR has been set, typically by the DVR'sowner. In one embodiment of the invention, the DVR supports differentmodes or views for different adults in a household. In such anembodiment, the DVR may be able to determine that a particular adult iscurrently using the DVR (e.g., due to the DVR having been directed to a“now playing” list that is associated with the particular adult). Inresponse to such a determination, the DVR may display advertisementsthat are targeted toward the particular adult.

4.0 Hardware Overview

FIG. 4 is a block diagram that illustrates a computer system 400 uponwhich an embodiment of the invention may be implemented. Computer system400 includes a bus 402 or other communication mechanism forcommunicating information, and a processor 404 coupled with bus 402 forprocessing information. Computer system 400 also includes a main memory406, such as a random access memory (RAM) or other dynamic storagedevice, coupled to bus 402 for storing information and instructions tobe executed by processor 404. Main memory 406 also may be used forstoring temporary variables or other intermediate information duringexecution of instructions to be executed by processor 404. Computersystem 400 further includes a read only memory (ROM) 408 or other staticstorage device coupled to bus 402 for storing static information andinstructions for processor 404. A storage device 410, such as a magneticdisk or optical disk, is provided and coupled to bus 402 for storinginformation and instructions.

Computer system 400 may be coupled via bus 402 to a display 412, such asa cathode ray tube (CRT), for displaying information to a computer user.An input device 414, including alphanumeric and other keys, is coupledto bus 402 for communicating information and command selections toprocessor 404. Another type of user input device is cursor control 416,such as a mouse, a trackball, or cursor direction keys for communicatingdirection information and command selections to processor 404 and forcontrolling cursor movement on display 412. This input device typicallyhas two degrees of freedom in two axes, a first axis (e.g., x) and asecond axis (e.g., y), that allows the device to specify positions in aplane.

The invention is related to the use of computer system 400 forimplementing the techniques described herein. According to oneembodiment of the invention, those techniques are performed by computersystem 400 in response to processor 404 executing one or more sequencesof one or more instructions contained in main memory 406. Suchinstructions may be read into main memory 406 from anothermachine-readable medium, such as storage device 410. Execution of thesequences of instructions contained in main memory 406 causes processor404 to perform the process steps described herein. In alternativeembodiments, hard-wired circuitry may be used in place of or incombination with software instructions to implement the invention. Thus,embodiments of the invention are not limited to any specific combinationof hardware circuitry and software.

The term “machine-readable medium” as used herein refers to any mediumthat participates in providing data that causes a machine to operationin a specific fashion. In an embodiment implemented using computersystem 400, various machine-readable media are involved, for example, inproviding instructions to processor 404 for execution. Such a medium maytake many forms, including but not limited to, non-volatile media,volatile media, and transmission media. Non-volatile media includes, forexample, optical or magnetic disks, such as storage device 410. Volatilemedia includes dynamic memory, such as main memory 406. Transmissionmedia includes coaxial cables, copper wire and fiber optics, includingthe wires that comprise bus 402. Transmission media can also take theform of acoustic or light waves, such as those generated duringradio-wave and infra-red data communications. All such media must betangible to enable the instructions carried by the media to be detectedby a physical mechanism that reads the instructions into a machine.

Common forms of machine-readable media include, for example, a floppydisk, a flexible disk, hard disk, magnetic tape, or any other magneticmedium, a CD-ROM, any other optical medium, punchcards, papertape, anyother physical medium with patterns of holes, a RAM, a PROM, and EPROM,a FLASH-EPROM, any other memory chip or cartridge, a carrier wave asdescribed hereinafter, or any other medium from which a computer canread.

Various forms of machine-readable media may be involved in carrying oneor more sequences of one or more instructions to processor 404 forexecution. For example, the instructions may initially be carried on amagnetic disk of a remote computer. The remote computer can load theinstructions into its dynamic memory and send the instructions over atelephone line using a modem. A modem local to computer system 400 canreceive the data on the telephone line and use an infra-red transmitterto convert the data to an infra-red signal. An infra-red detector canreceive the data carried in the infra-red signal and appropriatecircuitry can place the data on bus 402. Bus 402 carries the data tomain memory 406, from which processor 404 retrieves and executes theinstructions. The instructions received by main memory 406 mayoptionally be stored on storage device 410 either before or afterexecution by processor 404.

Computer system 400 also includes a communication interface 418 coupledto bus 402. Communication interface 418 provides a two-way datacommunication coupling to a network link 420 that is connected to alocal network 422. For example, communication interface 418 may be anintegrated services digital network (ISDN) card or a modem to provide adata communication connection to a corresponding type of telephone line.As another example, communication interface 418 may be a local areanetwork (LAN) card to provide a data communication connection to acompatible LAN. Wireless links may also be implemented. In any suchimplementation, communication interface 418 sends and receiveselectrical, electromagnetic or optical signals that carry digital datastreams representing various types of information.

Network link 420 typically provides data communication through one ormore networks to other data devices. For example, network link 420 mayprovide a connection through local network 422 to a host computer 424 orto data equipment operated by an Internet Service Provider (ISP) 426.ISP 426 in turn provides data communication services through the worldwide packet data communication network now commonly referred to as the“Internet” 428. Local network 422 and Internet 428 both use electrical,electromagnetic or optical signals that carry digital data streams. Thesignals through the various networks and the signals on network link 420and through communication interface 418, which carry the digital data toand from computer system 400, are exemplary forms of carrier wavestransporting the information.

Computer system 400 can send messages and receive data, includingprogram code, through the network(s), network link 420 and communicationinterface 418. In the Internet example, a server 430 might transmit arequested code for an application program through Internet 428, ISP 426,local network 422 and communication interface 418.

The received code may be executed by processor 404 as it is received,and/or stored in storage device 410, or other non-volatile storage forlater execution. In this manner, computer system 400 may obtainapplication code in the form of a carrier wave.

In the foregoing specification, embodiments of the invention have beendescribed with reference to numerous specific details that may vary fromimplementation to implementation. Thus, the sole and exclusive indicatorof what is the invention, and is intended by the applicants to be theinvention, is the set of claims that issue from this application, in thespecific form in which such claims issue, including any subsequentcorrection. Any definitions expressly set forth herein for termscontained in such claims shall govern the meaning of such terms as usedin the claims. Hence, no limitation, element, property, feature,advantage or attribute that is not expressly recited in a claim shouldlimit the scope of such claim in any way. The specification and drawingsare, accordingly, to be regarded in an illustrative rather than arestrictive sense.

What is claimed is:
 1. A method for presenting information through amultimedia device, the method comprising: recording a content streamrepresenting a particular program; selecting one or more informationalitems to display in association with the particular program; displayinga menu identifying one or more programs, including the particularprogram, which have been recorded and are available for presentation bythe multimedia device, at least the particular program being displayedwith a user-selectable option which, when selected, causes themultimedia device to display the one or more informational itemsselected for the particular program; wherein the method is performed byone or more computing devices.
 2. The method of claim 1, wherein the oneor more programs are a result of a search for programs matching one ormore user-defined criteria.
 3. The method of claim 1, wherein theuser-selectable option is displayed with a second user-selectable optionwhich, when selected by the user, causes the multimedia device topresent the particular program.
 4. The method of claim 1, wherein theone or more informational items include at least one of: (a) anadvertisement; (b) an interface through which the user can purchase aproduct or service; (c) a menu that comprises at least oneuser-selectable option, user selection of which causes the multimediadevice to display an advertisement to the user; (d) a menu thatcomprises at least one user-selectable option, user selection of whichcauses the multimedia device to display, to the user, an interfacethrough which the user can purchase a product or service; (e) aninterface through which the user can submit an answer to a question viathe multimedia device; (f) a menu that comprises at least oneuser-selectable option, user selection of which causes the multimediadevice to send a request to a request-receiving entity, wherein therequest asks the request-receiving entity to send specified informationto at least one or more of (i) a specified e-mail address or (ii) aspecified postal address; (g) a menu that comprises at least oneuser-selectable option, user selection of which cause the multimediadevice to provide the user with an ability to schedule an upcomingcontent stream for recording; or (h) an interface through which the usercan request downloading of a particular video for later viewing.
 5. Themethod of claim 1, wherein the one or more programs are differentepisodes of a particular television series.
 6. The method of claim 1,wherein the multimedia device audibly presents the user-selectableoption.
 7. An apparatus for presenting information through a multimediadevice, the apparatus comprising: a subsystem, implemented at leastpartially in hardware, that records a content stream representing aparticular program; a subsystem, implemented at least partially inhardware, that selects one or more informational items to display inassociation with the particular program; a subsystem, implemented atleast partially in hardware, that displays a menu identifying one ormore programs, including the particular program, which have beenrecorded and are available for presentation by the multimedia device, atleast the particular program being displayed with a user-selectableoption which, when selected, causes the multimedia device to display theone or more informational items selected for the particular program. 8.The apparatus of claim 7, wherein the one or more programs are a resultof a search for programs matching one or more user-defined criteria. 9.The apparatus of claim 7, wherein the user-selectable option isdisplayed with a second user-selectable option which, when selected bythe user, causes the multimedia device to present the particularprogram.
 10. The apparatus of claim 7, wherein the one or moreinformational items include at least one of: (a) an advertisement; (b)an interface through which the user can purchase a product or service;(c) a menu that comprises at least one user-selectable option, userselection of which causes the multimedia device to display anadvertisement to the user; (d) a menu that comprises at least oneuser-selectable option, user selection of which causes the multimediadevice to display, to the user, an interface through which the user canpurchase a product or service; (e) an interface through which the usercan submit an answer to a question via the multimedia device; (f) a menuthat comprises at least one user-selectable option, user selection ofwhich causes the multimedia device to send a request to arequest-receiving entity, wherein the request asks the request-receivingentity to send specified information to at least one or more of (i) aspecified e-mail address or (ii) a specified postal address; (g) a menuthat comprises at least one user-selectable option, user selection ofwhich cause the multimedia device to provide the user with an ability toschedule an upcoming content stream for recording; or (h) an interfacethrough which the user can request downloading of a particular video forlater viewing.
 11. The apparatus of claim 7, wherein the one or moreprograms are different episodes of a particular television series. 12.The apparatus of claim 7, wherein the multimedia device audibly presentsthe user-selectable option.
 13. A computer-readable medium storing oneor more sequences of instructions for presenting information through amultimedia device, which, when executed by one or more processors, causethe one or more processors to carry out steps of: recording a contentstream representing a particular program; selecting one or moreinformational items to display in association with the particularprogram; displaying a menu identifying one or more programs, includingthe particular program, which have been recorded and are available forpresentation by the multimedia device, at least the particular programbeing displayed with a user-selectable option which, when selected,causes the multimedia device to display the one or more informationalitems selected for the particular program.
 14. The computer-readablemedium of claim 13, wherein the one or more programs are a result of asearch for programs matching one or more user-defined criteria.
 15. Thecomputer-readable medium of claim 13, wherein the user-selectable optionis displayed with a second user-selectable option which, when selectedby the user, causes the multimedia device to present the particularprogram.
 16. The computer-readable medium of claim 13, wherein the oneor more informational items include at least one of: (a) anadvertisement; (b) an interface through which the user can purchase aproduct or service; (c) a menu that comprises at least oneuser-selectable option, user selection of which causes the multimediadevice to display an advertisement to the user; (d) a menu thatcomprises at least one user-selectable option, user selection of whichcauses the multimedia device to display, to the user, an interfacethrough which the user can purchase a product or service; (e) aninterface through which the user can submit an answer to a question viathe multimedia device; (f) a menu that comprises at least oneuser-selectable option, user selection of which causes the multimediadevice to send a request to a request-receiving entity, wherein therequest asks the request-receiving entity to send specified informationto at least one or more of (i) a specified e-mail address or (ii) aspecified postal address; (g) a menu that comprises at least oneuser-selectable option, user selection of which cause the multimediadevice to provide the user with an ability to schedule an upcomingcontent stream for recording; or (h) an interface through which the usercan request downloading of a particular video for later viewing.
 17. Thecomputer-readable medium of claim 13, wherein the one or more programsare different episodes of a particular television series.
 18. Thecomputer-readable medium of claim 13, wherein the multimedia deviceaudibly presents the user-selectable option.